package com.cskaoyan.javase.oop1._6constructor;
/**
 * 总计到目前为止,在创建对象过程中,给成员变量赋值的手段:
 *      1.构造器/构造方法
 *      2.直接定义时赋值,显式赋值
 *      3.默认初始化,具有默认值.
 * 在研究成员变量赋值顺序时，要遵循"掐头去尾"的原则，三种赋值方式中：
 *
 * 默认初始化永远的第一步，这是头。
 * 在创建对象过程中，无论我们后面还要学多少成员变量的赋值方式，构造器总是最后执行的。这是尾。
 *
 * 注：由于构造器最后执行，那么标准格式书写的构造器的赋值一定是可靠和正确的。"永远可以相信构造器"
 *
 * 显式赋值，见到二位大哥，只好屈居中间执行了。
 *
 * @since 16:16
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo3 {
    public static void main(String[] args) {
        Cat c = new Cat(10, "小猫咪");
        System.out.println(c.age);
        System.out.println(c.name);
    }
}
class Cat{
    int age = 5;
    String name = "旺财";

    public Cat() {
    }

    public Cat(int age, String name) {
        this.age = age;
        this.name = name;
    }
}